package org.lpw.wormhole.util;

/**
 * 配置管理器。用于获取相关配置。
 * 
 * @author lpw
 */
public interface Configurer
{
    /**
     * 获取HTTP异步请求最大线程数。
     * 
     * @return HTTP异步请求最大线程数。
     */
    public int getHttpMaxThread();

    /**
     * 获取HTTP连接超时时长，单位：秒。
     * 
     * @return HTTP连接超时时长。
     */
    public int getHttpConnectionTimeout();

    /**
     * 获取HTTP读取超时时长，单位：秒。
     * 
     * @return HTTP连接超时时长。
     */
    public int getHttpReadTimeout();

    /**
     * 获取缓存对象最大生存时间，单位：分钟。
     * 
     * @return 缓存对象最大生存时间。
     */
    public int getCacheAliveTime();

    /**
     * 获取缓存的最大使用内存。
     * 
     * @return 缓存的最大使用内存。
     */
    public long getMaxMemory();

    /**
     * 获取远程缓存URL地址集。
     * 
     * @return 远程缓存URL地址集。
     */
    public String[] getRemoteCacheUrl();

    /**
     * 获取队列处理最大线程数。
     * 
     * @return 队列处理最大线程数。
     */
    public int getQueueMaxThread();

    /**
     * 获取远程队列URL地址集。
     * 
     * @return 远程队列URL地址集。
     */
    public String[] getRemoteQueueUrl();
}
